package com.marvels.financial.loan.service;


import com.marvels.common.exception.MarvelsBusinessException;
import com.marvels.financial.loan.dto.McfeLendingProcess;
import com.marvels.financial.loan.dto.PaymentResponse;

/**
 * 放款服务
 * @author tangpw
 *
 */
public interface LoanPaymentApi {
	
	/**
	 * 放款
	 * @param loanId
	 * @param status原始状态
	 * @return  错误码   0成功  -1失败  -2超时  -3内部异常  1交易处理中  -5 交易重复   -6 验签不一致
	 * @throws MarvelsBusinessException
	 */
	public PaymentResponse excuteLoanPayment(String loanId,String status) ;
	
	
	/**
	 * 判断是否走cash
	 * @param fundCode
	 * @param paramsValue
	 * @return
	 */
	public boolean adjustSystemParams(String fundCode, String paramsValue);
	
	
	/**
	 * 放款查询
	 * @param loanId
	 * @return
	 */
	public PaymentResponse loanPaymentQuery(String loanId) throws MarvelsBusinessException;
	
	
	/**
	 * 放款成功处理
	 * @param mcfeLendingProcess
	 */
	public void loanSuccessDeal(McfeLendingProcess mcfeLendingProcess);
	
}
